有两题,想了很久都想不到应该怎么写,哪位大侠帮帮忙啊?

来源:百度知道 编辑:UC知道 时间:2024/06/07 22:22:16
1.有一个4*4的二维数组,将该数组各元素的值按从小到大的顺序按行逐列重新存储。二维数组的数,是自己随机输入。
2.有一篇短文不超过500个字符,求其首字母为a的单词的个数。短文也是自己随便输入,就是要统计个数。

我是新手啊,刚学了不久,最好不要用太深的语句,当然有详细说明更好,谢谢各位了。
侠胆熊虎兄,非常感谢你那么的热心,可是我也说了,我是初学者,你写的那些太深了,我指针都还没学呢。

1、
#include<stdio.h>
int main()
{
int a[4][4]={0};
int i,j,temp,*p;

//输入
printf("请输入一个4行4列的矩阵:\n");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);

//冒泡排序
p=&a[0][0];
for(i=0;i<4*4;i++)
for(j=4*4-1;j>i;j--)
if(p[j]>p[j-1])
{//交换
temp=p[j];
p[j]=p[j-1];
p[j-1]=temp;
}

//输出
printf("排序后的矩阵是:\n");
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}

2、
#include<stdio.h>
int main()
{
int c,b=1,f=0,s=0; //b表示单词开头,f表示以a开头,s计数

while((c=getchar())!='\n')
{
if(c=='a'&&b)
{
f=1;
b=0;
}
else if(c==' ')
{
if(f) s++;