大中华寻宝记免费阅读:为什么就变了一点点,结果就变化这么大?(C语言)

来源:百度文库 编辑:神马品牌网 时间:2024/05/02 03:10:26
#include<stdio.h>
void main()
{
int i;
for(i = 1;i < 8;i++)
printf("%");
}
答案:%%%%%%%(7个)

#include<stdio.h>
void main()
{
int i;
for(i = 1;i < 3;i++)
printf("%%%%%%%");
}
答案:%%%%%%%%(8个)

#include<stdio.h>
void main()
{
int i;
for(i = 1;i < 3;i++)
printf("%%%%%%%\n");
}
答案:%%%%
%%%%

我想输出的是两行%%%%%%%(7个)
可是却输出不了,而且只能就以上的方法!
为什么上面3题变化这么大!?
题目是这副图[IMG]http://www.ligongbuysale.ful.cn/UploadFile/2006-3/200631617242113783.bmp[/IMG]

第一题循环输出七次printf("%"),
第二题循环两次输出四个%,
printf("%%%%%%%");
里面每两个%输出为一个%,
前面有三对,最后一个没得配对,只有自己输出一个%.
第三题循环两次,每次输出四个个,同第二题,
但是有回车,因此分行.
如果要输出两行七个的,
不用双循环的话就只能按楼上的那么做了

因为在c中,printf("%d",a),%后面要一般要跟个类型,而

你要输出%号,那么就必须打两个,比如你想输出7个%,那

么你就要写成printf("%%%%%%%%%%%%%%\n"),一共14个,

所以最后的程序应该是

#include<stdio.h>
void main()
{
int i;
for(i = 1;i < 3;i++)
printf("%%%%%%%%%%%%%%\n");
}

#include<stdio.h>
void main()
{
int i;
for(i = 1;i < 15;i++)
{
printf("%");
if (i 除以 7余0)则
printf('\n')
}
}