C语言程序设计-现代方法 第二版 第13.7 小节代码 核对行星的名字

第13.7 小节代码 核对行星的名字

//This is a comment
//Author:King
//Time:2020/12/9
//Reference:C Programming:A Modern Approach,Second Edition

/******************************************************************************* 
13.7 小节代码  核对行星的名字 ,本程序涉及到字符串数组和命令行的使用。程序执行后
在命令行中输入planet xxxx yyyy等,程序会检查输入的字符串是否为行星的名字并排序 
********************************************************************************/

#include <stdio.h>
#include <string.h> 
//#include <stdbool.h> 	// C99 only
//#include <time.h>
//#include <stdlib.h>

#define NUM_PLANETS   9

/*主函数*/
//argc是命令行参数的数量,包括程序本身,argv是指向命令行参数(字符串)的指针数组,这些命令行参数以字符串的形式存储
int main(int argc, char *argv[])		 
{
	char *planets[] = {"Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune", "Pluto"};		//这个数组可以理解为数组的元素是指向字符串的指针 
	
	int i, j;
	
	for(i = 1; i < argc; i++)	//这里i从1开始表示跳过0,也就是不对比命令行参数的第一个参数(程序名) 
	{
		for(j = 0; j < NUM_PLANETS; j++)
		{
		 	if(strcmp(argv[i], planets[j]) == 0)
			{
				printf("%s is planet %d\n", argv[i], j + 1);
				break;
			}
		}
		if(j == NUM_PLANETS)
			printf("%s is not planet\n", argv[i]);	
	}
				
	system("pause");	//加入该函数后可以使得产生的exe单独运行,不会发生闪退。也可以加入其它函数使得main函数无法返回即可。如while(1)、getchar() 等 
	return 0;
	
}









  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值