格罗宁根大学排名:C语言学习中的问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/07 01:48:11
/* Demonstraes the use of if if statement with else clause */

#include<stdio.h>

int x,y;

int main(void)
{
/*Input the two nlues ti be tested*/

printf("\nInputan an integer value for x: ");
scanf("%d",&x);
printf("\nInputan an integer value for y: ");
scanf("%d",&y);

/*Test values and print result*/

if (x==y)
printf("x is equal to y\n");
else
if (x>y)
printf("x is greater than y\n");
else
printf("x is smaller than y\n");
return 0;
}

问题:
1. printf("\nInputan an integer value for x: ");
printf("x is equal to y\n");
这两个 printf语句为什么一个是print("\n.... )而另一个是print(...\n")
这两个有什么区别,分别用在什么情况下?
2.scanf("%d",&y);中"%d",&y是什么意思?我看到好多程序里都有"%d"、&y与之相类似的.用在什么情况下?

问题一:\n是回车换行的意思,放到前面是先换行后输出要输出的语句,放到后面是先输出语句后换行,很好理解的,明白了吗?至于用处看自己实际情况了,主要是看你输出语句的布局比较美观而定了。
问题二:%d是修饰符,在C语言中输入输出变量的值都要用%*来表示
%d---整型
%f---小数(.2f)保留两位小数,想保留几位只需该数字就可以了
%c---字符型
%s---字符串型
.
.
.
&y,&是取地址符,输入的值要存放到y的地址中,y就是变量了
用在什么情况呢,这个除了数组以外其他从命令行给值的都要加&,简单的说就是碰到scanf,格式就是这样的,引号里给修饰符,常用的修饰符上边给你列出来了,需要输入什么类型的就对应的用那个修饰符,引号外边&后边是你要给赋值的变量名,就是固定格式,任何情况下都要这样写。