永发信息网

C语言程序设计 急啊!!

答案:3  悬赏:20  手机版
解决时间 2021-07-16 22:34
  • 提问者网友:抽煙菂渘情少年
  • 2021-07-16 07:57

1、假设10个整数存储在数组a[10]中,要求把其中能被12整除的数标记为T,其它标记为F。标记存储在字符数组b[10]中下标相同的对应位置。试编写程序,实现以上功能,并输出两个数组。
2、编写一个程序实现以下功能,从键盘输入若干个学生的成绩,计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。

3、设计一个完整的C程序,要求完成以下功能:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在在t中,例如:7654321,得到的结果为7531。

4、10个人围成一圈,从第一个人开始依次从1到8循环报数,每当报数为8时,此人出圈,直到圈中只剩下一个人为止,请按退出的次序输出出圈人原来的编号。

5、输入任意十个数,找出其中的最大值、最小值,并计算平均值。

知道的高手解决下 谢谢啦! ^-^

最佳答案
  • 五星知识达人网友:青灯有味
  • 2021-07-16 08:57


刚给你回答一题,不采纳就算了.
这题分少也就算了. 再不采纳就说不过去了.



第一题:



#include< stdio.h >


main()
{
int a[ 10 ], i;
char b[ 10 ];

for( i = 0; i < 10; i++ )
{
scanf( "%d", &a[ i ] );
if( a[ i ] % 12 ) //如果a[ i ]不能被12整除
{
b[ i ] = 'F'; //将数组b的对应位置标记为F
}
else
{
b[ i ] = 'T'; //能被12整除, 则标记为T
}
}

for( i = 0; i < 10; i++ ) //输出数组a
{
printf( "%-5d", a[ i ] );
}

printf( "\n" );

for( i = 0; i < 10; i++ ) //输出数组b
{
printf("%-5c", b[ i ] );
}

}




第二题:



#include< stdio.h >


main()
{
float t, a[ 100 ], ave = 0; //ave用来累加总成绩,并计算平均成绩.
int i, cnt = 0; //cnt用来累计共输入几个成绩.

scanf("%f", &t);
while( t >= 0 ) //当输入的成绩不是负数时,则执行循环.
{
a[ cnt++ ] = t; //将输入的成绩保存的做数组a中.
ave += t; //累加总成绩
scanf("%f", &t);
}


ave /= cnt; //计算平均成绩.
printf("ave = %3f\n", ave); //输出平均分.

for( i = 0; i < cnt; i++ ) //遍历输入的成绩,输出低于平均分的成绩
{
if( a[ i ] < ave ) //如果a[ i ]小于平均分.则输出
{
printf("%-8.2f", a[ i ]);
}
}
}



第三题:




#include< stdio.h >


main()
{
long int k, s, t;
int i = 1;


scanf("%ld", &s); //输入


t = 0;
k = 1;
while( s )
{
if( i++ % 2 )
{
t += s % 10 * k;
k *= 10;
}
s /= 10;
}


printf("%ld\n", t);

}




第四题:



#include <stdio.h>

main()
{
int a[ 10 ];

int i, s = 10, num = 0; //s用于记录淘汰玩家的个数. num用于累加报数值.

for( i = 0; i < 10; i++ ) //初始化玩家状态.
a[ i ] = 1;

i = 0;
while( i = i % 10, 1 != s )
{
if( a[ i++ ] && ++num % 8 == 0 )
{
printf( "第 %d 个被淘汰!\n", i );
a[i-1]=0;
s--;
}
}

for( i = 0; !a[ i ]; i++ ) ; //寻找数组中胜利的玩家.

printf( "第 %d 个胜利!\n", i+1 );
}


第五题:



#include< stdio.h >


main()
{
float a[ 10 ];
float max, min, ave = 0;
int i;


for( i = 0; i < 10; i++ ) //输入任意十个数.
{
scanf("%f", &a[ i ]);
}


//初始化max, min的值.
max = a[ 0 ];
min = a[ 0 ];
ave += a[ 0 ];


for( i = 1; i < 10; i++ )
{
ave += a[ i ]; //累加输入的总值.


if( max < a[ i ] ) //a[ i ]和max变量对比. 保留最大值.
{
max = a[ i ];
}
if( min > a[ i ] ) //a[ i ]和min变量对比. 保留最小值.
{
min = a[ i ];
}
}


ave /= 10; //计算平均值.

printf("max = %8.2f, min = %8.2f, ave = %8.3f\n", max, min, ave );


}

全部回答
  • 1楼网友:轻雾山林
  • 2021-07-16 10:23
一题:void main() {int i, a[10]; char b[10]; for(i=0;i<=9;i++) {printf("\nshu ru");scanf("%d",&a[i]);} for(i=0;i<=9;i++) {续
  • 2楼网友:动情书生
  • 2021-07-16 09:26
这几个题就第四题对新手要难一点,学程序设计要自己多思考,不能找答案。实在不会哪天我有空可以帮你做下。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯