有关C语言的简单题

来源:百度知道 编辑:UC知道 时间:2024/05/26 08:23:19
#include<stdio.h>
#include<math.h>
void main()
{
int i,j,k;
printf("i=");
scanf("&d",&i);
printf("j=");
scanf("&d",&j);
k=i+j;
printf("%d\n",k);
}
我想实现的程序功能是:随便输入一个输给了i,再随便输入一个数给了j,把i j相加,在赋给k
还要把i j德值显示出来
很简单吧 可是我做不出来 哎~~

你主要是scanf("&d",&i);函数用法错误,
正确的形式应是
int scanf(char *format[,argument…])从控制台读入一个字符串,分别对各个参数进行赋值,
如输入整数
scanf("%d",&i);

格式字符串

在Turbo C中格式字符串的一般形式为: [标志][输出最小宽度][.精度][长度]类型 其中方括号[]中的项为可选项。各项的意义介绍如下:
1.类型类型字符用以表示输出数据的类型,其格式符和意义下表所示:
表示输出类型的格式字符 格式字符意义
d 以十进制形式输出带符号整数(正数不输出符号)
o 以八进制形式输出无符号整数(不输出前缀O)
x 以十六进制形式输出无符号整数(不输出前缀OX)
u 以十进制形式输出无符号整数
f 以小数形式输出单、双精度实数
e 以指数形式输出单、双精度实数
g 以%f%e中较短的输出宽度输出单、双精度实数
c 输出单个字符
s 输出字符串

呵呵.错在你那两个输入和打印的顺序弄倒了.应该先输入,再输出啊.比如第一对.当程序执行printf()这一步时,变量i还赋值,所以打印出来的就只是i=.而没有后面的数值.
把下面这句移到它前面去就可了. 正确的顺序应该是
scanf("%d",&i);
printf{"i=%d",i};
再就是你那个打印函数用的不是你想的结果.你只是打印i=.并没有给值.

#include<stdio.h>
void main()
{
int i,j,k;
printf("