导航菜单
首页 >  » 正文

C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和 c语言试题 假定所有变量均已正确说明,下列程序段运行后x的值是? int a=0,b=0,c=0

C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和

输出该数的各位数字之和的源代码如下:
#include <stdio.h>
int fun(int n)
{
int i;
int sum=0;
if(n>1000||n<0)
{
puts("输入的数字超出范围!"); // 错误信息提示
}
else
{
for(i=2;i<n;i++) // 循环遍历n,取出因子,并进行累加
{
if(0 == n%i)
{
sum+=i;
}
}
}
return sum;
}
void main()
{
int n,sum;
printf("Input n: ");
scanf("%d",&n);
sum=fun(n);
printf("sum=%d ",sum);
}

扩展资料
1、输入的数字要是整数,并且要在规定范围内。
2、对输入的数要进行拆分,注意1和本身不能在求和之中。
3、可以使用循环对输入的数(n)遍历,如果n%i余为0,则表明能整除,次i则为因子。

c语言试题 假定所有变量均已正确说明,下列程序段运行后x的值是? int a=0,b=0,c=0

结果为4.
1. 先给abc三个整形变量赋值0.if(!a)这里!a值为!0,即为1,即if(1),条件为真,执行x--,不执行else if语句。该if语句结束,此时x=34。
2. 第二个if(c),c值为0,条件为假,不执行x=3,执行else语句x=4,此时x赋值为4.
结果x=4.
程序调试结果x=4,过程分析如有差错请指出。
唉?楼上先我回答了,分给他吧。

判断ch是数字字符的C语言表达式是( )多选

A 先判断 ch 是不是大于 0,然后使用比较结果和 9 比较,不正确。
B 判断给定字符在不在 0 和 9 之间,是正确答案
C 类似于b,但是得到的答案不正确
D 和 B 的结果是一样的,是正确答案

已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数

A
整形和字符型一起输入时中间不能连有空格,因为空格也是字符,所以BC错,D有逗号,那么在输入的格式控制也应该有逗号scanf(“%d,%d,%c,%c”,&a1,&a2,&c1,&c2);
这样才对。。

C语言的程序一行写不下时,可以( )

这个问题本身有问题.
这4个答案都不正确.
A、 B、明显错,不用细说.
C、在任意一空格处换行, 错在"任意",如果空格在字符串内,不可在那里换行,因为换行就插入了不该有的CRLF.影响了字符串的值,影响了字符串的长度,如果是输出打印,会多出不该有的新行.
D、用回车符换行,错在没有指明位置,这就可能把变量名拆坏,函数明拆坏.
正确答案是不需换行.C程序的编辑器应当支持很宽很宽的行.或有自动"换行"而存下的文件不含这个自动"换行"符.(就象百度"我也来回答"这个TEXT BOX功能一样).
如果出题的老师,一定要你选一个,那就选C.

马克思和近代史哪个难 自考马克思历年真题

两个都不简单  也不算难
自考中 这两个是公共课  而且是必须考,
近代史 需要背诵的多    马克斯比较绕口
但是还好  这两个你要记住  要多看   多背诵  多看几遍 一定要多看
并且买一些 考题通 之类的  看看重点
考试的时候 要注意  一定不会的也要写满  不要空着
基本是能通过的

相关推荐: