因为明天就要交,可是我才看到一半,这些数组的作业实在是不会做。。。
哪个高手帮忙作下?
实在是没有分了。。刚才问了几个问题都交出去了。。
谢谢大家了。。。
综合练习
(1) 以下程序统计从终端输入的字符中每个大写字母的个数,用#号作为输入结束标志,请完成程序并上机调试运行。
#include <stdio.h>
#include <ctype.h>
main()
{ int num[26],i;
char c;
for(i=0;i<26;i++) num[i]=0;
while (_____________!=’#’) /*统计从终端输入的大写字母的个数*/
if(isupper(c)) num[c-65]+=1;
for(i=0;i<26;i++) /*输出大写字母和该字母的个数*/
if( num[i]) printf(“%c:%d\n”,i_________,num[i]);
}
(2) 以下程序用两种方法输出字符串。请完成程序并上机调试运行。
main()
{ int i;
char string[]=” I love China!”;
printf(“________”,string);
printf(“---------------\n”);
___________;
while (string[i])
{ printf(“%c”,string[i]);
____________;
}
printf(“\n”);
}
(3) 下列程序将一维数组的数据按从大到小排序输出。请完成程序并上机调试运行。
main()
{ int i,j,temp;
int a[8]={50,80,70,45,90,65,78,95};
for(_________;i<7;i++)
for(_________;j<8;j++)
if(___________)
{ temp=a[i];___________;a[j]=temp;}
for(i=0;i<8;i++)
printf(“%d,”a[i]);
}
3、改错题:
以下程序的功能是:从键盘上输入10个整数,并利用冒泡法为其按从小到大的顺序排列。程序中有几处错误,试找出他们后加以修改,并上机验证修改结果。
main()
{ int a[10],i,j,temp;
printf(“\n Input 10 integer numbers:”);
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
for(i=0;i<8;i++)
for(j=0;j<10-i;j++)
if(a[j]<a[j+1])
{temp=a[j];a[j]=a[j+1];a[j+1]=temp;}
printf(“\n”);
for(i=0;i<10;i++)
printf(“%d”, a[i]);
}
3、编写程序
(1)、青年歌手参加歌曲大奖赛,有10个评委对她进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。
(2)、在键盘上输入N个整数,试编制程序使该数组中的数按照从大到小的次序(升序)排列。