c语言中的自++问题

来源:互联网 发布:网络暴力后果 编辑:程序博客网 时间:2024/05/21 10:06

本人是大一新生,在学习c语言过程中看到一个问题,在自己写完代码时候发现和网上的思路不一样,于是自己运行以下发现问题

问题:编写一段程序,像右边这样根据输入的整数,循环显示0123456789,显示的位数和输入的整数值相同。

网上的程序是:

#include <stdio.h>int main(void){        int i,j,n;        j=1;        printf("请输入一个整数:");        scanf("%d",&n);        for(i=0;i<n;i++) {                printf("%d",j);                j++;                if(j>9)                        j-=10;        }        printf("\n");        return 0;

一开始本渣渣写的程序以为很精简,可是功夫没到家,于是等运行以下代码发现自己在c语言中的学习并不是那么扎实。
以下show my code:

#include<stdio.h>int main(int argc, char *argv[]){    int t,c;    scanf("%d",&c);    for (t=1;t<c;++t)        printf("%d\n",t%10);        printf("%d",t);    return 0;}

123456789012345678901234
25
“`
发现运行结果最后面少了5,但是最后的结果也是t=25

最后发现原来原来只要在for语句中第二个表达式内加入=就可以了。for (t=1;t<=c;++t)

现在我们重新看一下程序,因为在判断完t=25时已经跳出循环语句,并没有再循环%t,
但是t的值也变成了26.

1 0