计算三角形数并逐个输出:
/* program to calculate the triangualar number you want*/
# include <stdio.h>
int main (void)
{
int i=1,n,triangualar_number=0;
printf ("please enter which triangualar numbers you want?\n\n\n\n");
scanf ("%i",&n);
printf ("\n\n n triangualar number\n");
printf ("--- ------------------\n");
while (i<n+1)
{
triangualar_number=triangualar_number+i;
printf ("%2i %i\n",i,triangualar_number);
i++;
}
getch();
return 0;
}
请先看运行结果,我要问的问题在最后面,已经用红色标记出.先谢了.
输入:15 运行结果正常.
输入: 字母0
运行结果如下图:
然而当我输入:111 (字母O的ASCⅡ码)
结果如下图:
我的问题是:
当我输入字符型变量字母0时它不是应该自动转换为相应的整型变量之后在参与运算吗?
为什么我输入字母O和输入字母0的ASCⅡ码运行结果会不一样?当我输入字符0时系统到底是如何处理的啊?
还有一个问题是当我输入111时,由于要显示的项目太多,屏幕没法显示完全,那我该如何查看屏幕上看不到的部分(如45所对应的三角形数),可以有代码操作实现按上下方向键查看吗?能否写出这样一段代码?
[此贴子已经被作者于2007-9-29 11:38:35编辑过]
----------------解决方案--------------------------------------------------------
哪么的没人晓得?
----------------解决方案--------------------------------------------------------
至于第一个问题,你试试
#include<stdio.h>
void main()
{
int n;
scanf("%d",&n);
printf("%d",n);
}
单步跟踪看看就知道了,并没有转换成相应的整型变量..........
下面的 不知道你用的什么编译器,我用的vc++ 能看到的
----------------解决方案--------------------------------------------------------
至于第一个问题,你试试
#include<stdio.h>
void main()
{
int n;
scanf("%d",&n);
printf("%d",n);
}
单步跟踪看看就知道了,并没有转换成相应的整型变量..........
下面的 不知道你用的什么编译器,我用的vc++ 能看到的
我试了一下,的确不是那样,谢了.
第二个问题有知道如何解决的吗?
可以实现滚屏吗?
----------------解决方案--------------------------------------------------------
写到文件里面就可以了
----------------解决方案--------------------------------------------------------
写到文件里面就可以了
写到文件里面就可以了?
把什么写进文件里面啊?
----------------解决方案--------------------------------------------------------
#include <conio.h>
#include <stdio.h>
int main(void)
{
FILE *fp;
fp=fopen("resource.txt","w");
int i = 1, n, triangualar_number = 0;
printf("please enter which triangualar numbers you want?\n\n\n\n");
scanf("%i", &n);
printf("\n\n n triangualar number\n");
printf("--- ------------------\n");
while (i < n + 1)
{
triangualar_number = triangualar_number + i;
fprintf(fp,"%2i %i\n", i, triangualar_number);
i++;
}
fclose(fp);
getch();
return 0;
}
fprintf()就行了
----------------解决方案--------------------------------------------------------
#include <conio.h>
#include <stdio.h>
int main(void)
{
FILE *fp;
fp=fopen("resource.txt","w");
int i = 1, n, triangualar_number = 0;
printf("please enter which triangualar numbers you want?\n\n\n\n");
scanf("%i", &n);
printf("\n\n n triangualar number\n");
printf("--- ------------------\n");
while (i < n + 1)
{
triangualar_number = triangualar_number + i;
fprintf(fp,"%2i %i\n", i, triangualar_number);
i++;
}
fclose(fp);
getch();
return 0;
}
fprintf()就行了
请问你这个是用C++编的吗?
为什么我用WIN_TC编译不了啊
----------------解决方案--------------------------------------------------------
对!
头文件可以看出来
#include <conio.h>和getch();
----------------解决方案--------------------------------------------------------
vc++ 6.0盗版
----------------解决方案--------------------------------------------------------