程序员必备面试题
2016-01-21 22:53
441 查看
1、
使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 例如:输入test.exe -a 1 2 执行1+2输出3
#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char* argv []) { int num1 = atoi( argv[2]); int num2 = atoi( argv[3]); if (strcmp( "-a", argv [1]) == 0) { printf( "%d\n", num1 + num2); } else if (strcmp("-s" , argv[1]) == 0) { printf( "%d\n", num1 - num2); } else if (strcmp("-m" , argv[1]) == 0) { printf( "%d\n", num1 * num2); } else if(strcmp("-d" , argv[1]) == 0) { printf( "%d\n", num1 / num2); } system( "pause"); return 0; }2、编写函数判断当前的机器大端小端。#include <stdio.h>int check_system(){int a = 1;char*p = ( char*)&a;if (*p == 1)return 0;elsereturn 1;}int main(){if (check_system())printf( "大端\n" );elseprintf( "小端\n" );system( "pause");return 0;}3、判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如:给定s1 = AABCD和s2 = BCDAA,返回1,给定s1=abcd和s2=ACBD,返回0. AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA AABCD右旋一个字符得到DAABC AABCD右旋两个字符得到CDAAB#include#include <stdio.h>#include <string.h>#include <stdlib.h>int is_move_str(char arr[], char *p ){int n = strlen(arr );int m = strlen(p );if(m != n){return 0;}strncat( arr, arr , n);if(strstr(arr , p) == NULL){return 0;}elsereturn 1;}int main(){char arr[20] = "abcdef" ;char *p = "efabcd" ;int ret = is_move_str(arr, p);if(ret == 1){printf( "ok\n");}else if (ret == 0){printf( "no\n");}system( "pause");return 0;}
相关文章推荐
- 一个关于if else容易迷惑的问题
- 网卡安装常见问题精解
- 常见路由器关闭端口
- 一道sql面试题附答案
- C# 超高面试题收集整理
- 人人网javascript面试题 可以提前实现下
- PHP中设置一个严格30分钟过期Session面试题的4种答案
- 据说是雅虎的一份PHP面试题附答案
- php牛逼的面试题分享
- 一套比较完整的javascript面试题(部分答案)
- 10个经典的Java main方法面试题
- Lua教程(五):C/C++操作Lua数组和字符串示例
- C/C++实现快速排序的方法
- 小米公司JavaScript面试题
- 超级全面的PHP面试题整理集合第1/2页
- javascript常见操作汇总
- C/C++常用函数易错点分析
- 基于C++中常见内存错误的总结
- Mac下使用Eclipse编译C/C++文件出现 launch failed, binary not found 解决方案
- 5个实用的shell脚本面试题和答案