exercise18

1.使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,
第一个参数“ - a”选项执行加法,“ - s”选项执行减法,“ - m”选项执行乘法,“ - d”选项执行除法,后面两个参数为操作数。
例如:命令行参数输入:test.exe - a 1 2
执行1 + 2输出3
#include <stdio.h>

int main(int argc, char *argv[])
{
	int ret = 0;
	if (argc != 4){
		printf("error!\n");
	}

	switch (argv[1][1])
	{
	case 'a':   ret = atoi(argv[2]) + atoi(argv[3]); break;
	case 's':   ret = atoi(argv[2]) - atoi(argv[3]); break;
	case 'm':   ret = atoi(argv[2]) * atoi(argv[3]); break;
	case 'd':   ret = atoi(argv[2]) / atoi(argv[3]); break;
	default:printf("error!\n"); break;
	}
	printf(" result= %d\n", ret);
	return 0;

}

2.写冒泡排序可以排序多个字符串。
#include<stdio.h>

void sort(char *str[], int len)
{
	int i = 0;
	int j = 0;
	int flag;
	for (i = 0; i < len - 1; i++)
	{
		flag = 0;
		for (j = 0; j < len - i - 1; j++)
		{
			if (strcmp(*(str + j), *(str + j + 1))>0)
			{
				flag = 1;
				char *tmp = *(str + j);
				*(str + j) = *(str + j + 1);
				*(str + j + 1) = tmp;
			}
		}
		if (flag == 0)//一轮遍历全部按顺序排列
		{
			return 0;
		}
	}
}
int main()
{
	char *str[] = { "a", "c", "b", "e", "f" };
	int len = sizeof(str) / sizeof(str[0]);
	sort(str,len );
	int i = 0;
	for (i = 0; i < len; i++)
	{
		printf("%s ", str[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/zn_wuxunian/article/details/80358622
今日推荐