挑战:序列求和

2017-07-11  本文已影响29人  去留无意hmy

       for(表达式1,表达式2,表达式3) 语句(循环体)

       程序进入for语句后,受限进入表达式1,设置初始循环值,然后进入表达式而,判断循环是否达到终值。然后进入循环体,执行完循环体后,无条件进入表达式3改变循环变量,在进入表达式2判断是否达到终值。

for(i=1;i<argc;i++)  
{
     num[i]=atoi(argv[i]);
     sum+=num[i];
 }

       int main(int argc, char *argv[])

       main是主函数,主函数也是一个函数,一般的常见的main函数不会被调用。但是main函数可以被命令行调用,此时就可以使用int main(int argc, char *argv[])的写法。

       int argc为命令行调用时的参数个数 ;

       char *argv[]是一个字符数组,其大小是int argc,主要用于命令行参数 argv[] 参数,数组里每个元素代表一个参数;

       可以用atoi()函数来将字符数据转换为int型的值。

//实例一,摄氏温度转华氏温度
#include <stdio.h>
#include <stdlib.h>
int main(int arg ,char *argv[])
{
  //用于存储输入的摄氏度
  int input=0;
  //判断是否输入的是1个参数
  if (argc !=2){
    return 1;
  }
  //注意argv[0]是执行程序,argv[1]是第一个参数;
  input=atoi(argv[1]);
  printf("%f",32.0+1.8*input);
  return 0;
}

//实例2  序列求和

#include <stdio.h>
#include <stdlib.h>
int main(int arg ,char *argv[])
{
   int i,sum=0;
   int num[argc];
  //判断是否输入的是1个参数
  if(argc>1)
{ 
     for(i=1;i<argc;i++)     //注意argv[0]是执行程序,argv[1]是第一个参数;
      {
         num[i]=atoi(argv[i]);
         sum+=num[i];
        }
 }
 printf("%d\n",sum);
  return 0;
}```







上一篇下一篇

猜你喜欢

热点阅读