请指出两个循环语句的功能,并比较两者的优劣
……
int odd=0,even=0,n=1;
while(n<1000)
{
odd+=n;
even+=n+1;
n=n+2;
}
……
第二个
……
int odd=0,even=0,n;
for(n=1;n<=1000;n++)
{
if(n%2==0)even+=n;
else odd+=n;
}
……
请写出这个程序的功能,指出存在的问题,并提供更好的版本。
#include<stdio.h>
void main()
{
int score=getchar();
if(score=='A')printf("优\n");
if(score=='B')printf("良\n");
if(score=='C')printf("中\n");
}
张、王、李三家各有三个小孩。一天,三家的九个孩子在一起比赛短跑,规定不分年龄大小,跑第一得9分,跑第二得8分,依次类推。比赛结果各家的总分相同,且这些孩子没有同时到达终点的,也没有一家的两个或三个孩子获得相连的名次。已知获第一名的是李家的孩子,获得第二的是王家的孩子。问获得最后一名的是谁家的孩子?
提示:设计二维数组存储不同家庭不同孩子的各自得分,利用循环反复尝试,得出符合条件下孩子们的各自得分,看得分为1分的那个孩子是哪家的,输出结果。
谢谢啦 急 又追加
将已经学习过的统计行数、字节、字符、词数的四个程序,整合为一个程序。
实现通过一个程序就能同时统计出标准输入中的文本行数、字节、字符和词数信息
#include <stdio.h>
void main ( )
{
int lines=0, ch ;
ch = getchar ( );
while ( ch!=EOF )
{
if ( ch==‘\n’ ) lines ++;
ch = getchar ( );
}
printf (“您一共输入了%d行。\n”, lines) ;
}
#include <stdio.h>
void main()
{
int char_sum=0,byte_sum=0,ch;
printf("请输入若干字符(以“ctrl+Z”键结束):\n"); //进行输入提醒
while((ch=getchar())!=EOF)
{
byte_sum++;
if(ch>=128) //进行是否为双字节字符的判断
{
getchar();byte_sum++; //是双字节字符,必须再从屏幕上读入一个字符,字节数++
}
char_sum++; //字符数正常统计
}
printf("您的文档一共有%d个字符。\n",char_sum);
printf("您的文档一共有%d个字节。\n",byte_sum);
}
别的题呢?快啊 急死了 呜呜
追答#include
int score[4][4];
int main()
{
int i,j,k,who;
score[1][1]=7; /*按已知条件进行初始化:score[1]:张家三个孩子的得分*/
score[2][1]=8; /*score[2]:王家三个孩子的得分*/
score[3][1]=9; /*李家三个孩子的得分*/
for(i=4;i<6;i++) /*i:张家孩子在4到6分段可能的分数*/
for(j=4;j<7;j++) /*j:王家孩子在4到6分段可能的分数*/
for(k=4;i!=j&&k<7;k++) /*k:李家孩子在4到6分段可能的分数*/
if(k!=i&&k!=j&&15-i-score[1][1]!=15-j-score[2][1] /*分数不能并列*/
&&15-i-score[1][1]!=15-k-score[3][1]
&&15-j-score[2][1]!=15-k-score[3][1])
{
score[1][2]=i;score[1][3]=15-i-7; /*将满足条件的结果记入数组*/
score[2][2]=j;score[2][3]=15-j-8;
score[3][2]=k;score[3][3]=15-k-9;
}
for(who=0,i=1;i<=3;i++,printf("\n"))
for(j=1;j<=3;j++)
{
printf("%d",score[i][j]); /*输出各家孩子的得分情况*/
if(score[i][j]==1)who=i; /*记录最后一名的家庭序号*/
}
if(who==1) /*输出最后判断的结果*/
printf("The last one arrived to end is a child from family Zhang.\n");
else if(who==2)
printf("The last one arrived to end is a child from family Wang.\n");
else printf("The last one arrived to end is a child from family Li.\n");
}
*运行结果
7 5 3
8 6 1
9 4 2
The last one arrived to end is a child from family Wang.
(获得最后一名的是王家的孩子。
别的题呢
接着来
追答第二题
void main()
{int score=getchar();
switch(score){
case 'A' :printf("优\n");
case 'B' :printf("良\n");
case 'C' :printf("中\n");
}
}
貌似不对
追答怎么?
追问输入A没反应
追答第二题
void main()
{int score=getchar();
switch(score){
case 'A' :printf("优\n");break;
case 'B' :printf("良\n");break;
case 'C' :printf("中\n");break;
}
}
第二题那个原来的程序有什么问题?
追答那个程序没什么问题
追问可是这个是试题啊 会不会考虑到小写ABC时的问题