c语言yn
❶ 如何用c语言调用ping命令
C语言调用ping命令,参考代码:
#include <windows.h>
#include <stdio.h>
#include <string.h>
char YN(int k) {
    FILE *f;
    char fn[40];
    char ln[80];
    char yn;
    int n;
    yn='N';
    sprintf(fn,"d:\\ping%d.txt",k);
    f=fopen(fn,"r");
    if (NULL!=f) {
        n=0;
        while (1) {
            if (NULL==fgets(ln,80,f)) break;//
            if (strstr(ln,"ms ")) {
                yn='Y';
                break;//
            }
            n++;
            if (n>=4) break;//
        }
        fclose(f);
    }
    return yn;
}
void main(int argc,char **argv) {
    char cmdstr[256];
    int i;
    int IP[3];
    char c;
    if (argc<2) {
    USAGE:
        printf("Usage example:\n    %s 192.168.60.\nto test 192.168.60.1-254\n",argv[0]);
        return;
    }
    if (4==sscanf(argv[1],"%d.%d.%d%c",&IP[0],&IP[1],&IP[2],&c)) {
        if (0<=IP[0] && IP[0]<=255
         && 0<=IP[1] && IP[1]<=255
         && 0<=IP[2] && IP[2]<=255
         && '.'==c) {
            for (i=1;i<255;i++) {
                sprintf(cmdstr,"cmd /c ping %s%d -n 1 -w 1000 >d:\\ping%d.txt",argv[1],i,i);
                WinExec(cmdstr,SW_HIDE);
            }
            Sleep(3000);
            for (i=1;i<255;i++) {
                printf("%c %s%d\n",YN(i),argv[1],i);
            }
            Sleep(3000);
            WinExec("cmd /c del /q d:\\ping*.txt",SW_HIDE);
        } else goto USAGE;
    } else goto USAGE;
}
❷ c语言for循环嵌套if语句
两种方法,一种是重新赋值,程序段如下
for(i=0;i<Maxi;i++)
for(j=0;j<Maxj;j++)
if(true)
{
i=-1;
break; //从此处跳出本层循环,由于赋值i=-1,执行完
//break语句之后,执行外层循环i++指令,使得
//i=0;外层循环相当于重新开始,j的值无需处理,
//因每次进入内层循环,j值均会被for语句赋初值0
}第二种方法是无条件转移指令:
sign: for(i=0;i<Maxi;i++)
for(j=0;j<Maxj;j++)
f(true) goto sign; //条件为真跳转至sign语句一般情况下,应当避免使用goto无条件跳转指令,因为很多人认为程序可读性会因为goto的引入而变差,但是在不少情况下goto可以使得程序代码简单,效率提高,个人认为适当使用goto指令并无不可,楼主可自己作出选择。
❸ C语言里if语句可以嵌套for循环么
C语言里if语句里是可以嵌套for循环的(if语句里可以放C语言里的任意的执行语句)。
举例说:
char yn;
int i;
printf("需要打印1到10之间的所有奇数吗(Y/N)?\n");
scanf("%c",&yn);
if(yn=='Y'||yn=='y')
{
  for(i=1;i<10;i+=2)
    printf("%d ",i);
 printf("\n");
}
else
  printf("那就不打印了\n");
