1. 怎样让c语言程序重复执行
例如:
#include<stdio.h>
intmain(void)
{
charc;
c=getchar();
while(c!='')//输入空格退出
{
printf("%c",c);//这里改成你需要的那个函数做相应的工作就可以了
c=getchar();
}
return0;
}
(1)c语言如何重新运行整个函数扩展阅读
C语言循环控制语句
#include<stdio.h>
intmain(){
inta;
/*forloopexecution*/
for(a=10;a<20;a=a+1)
{
printf("valueofa:%d ",a);
}
return0;
}
C编程语言中do...while循环的语法是-
do{
statement(s);
}while(condition);
2. C语言中重新实现库函数
fgets是从文件读取,getchar是从输入读取,两个还是有区别的
怀疑是gets
如果一定要用fgets的话,那么可以先用freopen重定向输入,来使fgets和getchar的定向相同
以下用gets实现或者被实现
含测试函数main
#include <stdio.h>
int str_to_int(char *str)
{
int sign = 1;
int ret = 0;
char *p;
p = str;
if(*p == '+') p++;
else if(*p == '-') sign = -1, p ++;
while(*p)
{
if(*p >= '0' && *p <= '9')
ret = ret * 10 + (*p - '0');
else break;
p ++;
}
return sign * ret;
}
int get_int_with_getchar()
{
char a[20] = {0};
int i = 0;
while(i<19)
{
a[i] = getchar();
if(a[i] == '\n')
break;
i ++;
}
a[i] = 0;
return str_to_int(a);
}
int get_int_with_gets()
{
char a[20] = {0};
gets(a);
return str_to_int(a);
}
void gets_with_getchar(char *str)
{
int i = 0;
if(str == NULL) return;
do
{
str[i] = getchar();
}while(str[i++] != '\n' );
}
char *do_strchr(char *src, const char c)
{
char *p = src;
while(*p && *p!= c) p ++;
if(*p != c) return NULL;
return p;
}
int do_isdigit(char c)
{
return c <= '9' && c >= '0';
}
int do_isalpha(char c)
{
return (c <= 'Z' && c >= 'A') || (c <= 'z' && c >= 'a');
}
int main()
{
int a;
char test[100] ;
a = get_int_with_getchar();
printf("get_int_with_getchar = %d\n", a);
a = get_int_with_gets();
printf("get_int_with_gets = %d\n", a);
gets_with_getchar(test);
printf("gets_with_getchar = %s\n", test);
printf("do_strchr %s %s\n", do_strchr(test, 'a'), do_strchr(test, 'b'));
printf("do_isdigit = (%d,%d) \n", do_isdigit('1'), do_isdigit('a'));
printf("do_isalpha = (%d,%d) \n", do_isalpha('1'), do_isalpha('a'));
}
3. c语言如何跳回前面的某一个点重新从那里开始运行
用goto语句。
#include<stdio.h>
voidmain()
{
inta;
begin:scanf("%d",&a);//goto语句的标号begin
if(a<0||a>9)
gotobegin;//如果用户输入的数不在0~9之间,则重新输入
eles
printf("%d ",a);//如果用户输入的数在0~9之间,则输出该数
}
(3)c语言如何重新运行整个函数扩展阅读:
goto的基本语法
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i = 1;
while(1)
{
printf("在while(1)里 ");
while(i++)
{
printf("i = %d ",i);
if(i > 3)
{
goto TiaoChu;
}
}
}
TiaoChu:
printf("程序结束 ");
return 0;
}
运行结果:
标号位置
在while(1)里
2
3
4
程序结束
4. C语言中一个程序写完后怎么运行啊
当编写完一个程序后,需要首先进行编译,然后再运行。
如下图所示,程序编写完毕后,点击工具栏中的Execute,选择compile(编译)。
如果没有错误,再选择Execute,选择run(运行)。
(4)c语言如何重新运行整个函数扩展阅读:
dll因为某些原因(最大的可能是因为它是个病毒或流氓软件的dll文件,被杀软删除了)丢失了,但其相关的注册信息却还在,导致系统开机时还加载它,却又找不到它的文件,所以报错。
如果你点击“确定”后,系统没有什么不正常,并且可以正常运行的话,你可以用这个软件清理掉这个开机加载项,以后开机就不会出现这个信息了。
下载和安装编译器。C语言需要通过编译器解释为计算机可以理解的机器码。 编译器通常是免费的, 不同的操作系统上一般使用不同的编译器。
对于Windows系统, 可以尝试 Microsoft Visual Studio Express,其是Windows平台上最流行的多语言IDE(集成开发环境),其集成了Microsoft开发的C语言编译器。对于OS X系统, Xcode是一款优秀的多语言IDE,其集成了C语言的编译器。对于Linux, gcc是一个不错的也是最流行的选择。
5. c语言如何重新开始主函数,我是初学者。
#include<stdio.h>
#include<stdlib.h>
voidmain(void)
{
inta;
printf("pleaseinputanumber(1-100) ");
while(1)
{
scanf("%d",&a);
{
if(a<=60)
{
printf("notpass!pleasetrymorehard! ");/*希望小小于60时重新开始,大于60通过*/
continue;
}
if(a>60)
{
printf("Pass!");
returnEXIT_SUCCESS;
}
}
}
system("pause");
}
6. c语言用什么函数可以实现重启当前程序或者让程序回到最初运行状态
利用系统函数另重新启动本程序的exe,然后自己的程序自动cancel
7. C语言如何进行判断后返回函数重生执行
跟PC指针和堆栈有关,PC指针会默认地自动加1,也可由程序指令来改变.。 比如跳转,函数调用等,
对于函数调用,进入函数前当前地址进栈,同时修改PC指针指向函数首地址去执行函数,在退出函数时又通过出栈并修改PC指针指向以出栈内容为地址的地址(也就是进入函数前的地址)。
你可以 用编译器看一下反汇编就知道了。
8. 怎么样让一个c语言中的一段函数,从头运行下来若到后来不满足条件又让他从头运行,直到满足就不运行
方法太多了,随便写个,楼上的也可以,但是写的不太明白
while(1)
{
…… //要执行的一段函数
if (条件满足) //判断是重新执行还是跳出
break; //跳出死循环
}
9. 哪个函数可以让c语言的程序重新执行 新手!!
用goto 配上个 lable 就好了: #include<stdio.h> main(){ double p, w, s,d,f; int t; REDO: printf("请输入每公里每吨货物的\n运费P,货物重w,距离s\n"); scanf("%lf,%lf,%lf",&p,&w,&s); if(s<0 || w<0 || p<0) { printf("二逼呀你,怎么会有运费或货种或路程是小于0的\n"); exit(0); } else if(s<250) t=0; else t=s/500+1; switch(t) { case 0: d=0;break; case 1: d=0.02;break; case 2: d=0.05;break; case 3: d=0.08;break; case 4: d=0.08;break; case 5: d=0.1;break; case 6: d=0.1;break; default: d=0.15; } f=p*w*s*(1-d); printf("总运费f=p*w*s*(1-d)=%lf\n",f); goto REDO; }
10. c语言如何让输入函数再隔一段时间输入端无回应后继续运行后面的程序
#include <stdio.h>
#include <conio.h>
#include <time.h>
int main () {
int x= -9999; //初值
clock_t t0,dt;
int ttt= 2; //假定等待时间设2秒
t0 = clock(); //计时开始
printf("input x:\n");
while( !_kbhit() ) {
dt = clock() - t0;
if (dt >= ttt * CLOCKS_PER_SEC) goto Lab;
}
scanf("%d",&x);
Lab: printf("x=%d",x); //超时,跳到这行。
return 0;
}
超时,则输出 -9999, 不超时,输出拍入的值