set/A 1+2+3
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[100] = { 0 };
char l_v2[100] = { 0 };
printf("请输入一个表达式:");
fgets(l_v1, sizeof(l_v1), stdin);
sprintf(l_v2, "set /A %s", l_v1);
system(l_v2);
printf("\n");
system("pause");
}
假设我们在C语言中要实现一个类似的功能.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[100] = "100*56=";
int l_第一整数, l_第二整数, l_结果;
char l_符号;
sscanf(l_v1, "%d%c%d=", &l_第一整数, &l_符号, &l_第二整数);
switch (l_符号)
{
case '+':
l_结果 = l_第一整数 + l_第二整数;
break;
case '-':
l_结果 = l_第一整数 - l_第二整数;
break;
case '*':
l_结果 = l_第一整数 * l_第二整数;
break;
case '/':
l_结果 = l_第一整数 / l_第二整数;
break;
}
sprintf(l_v1, "%d%c%d=%d", l_第一整数, l_符号, l_第二整数, l_结果);
puts(l_v1);
system("pause");
}
strchr 寻找字符
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[100] = { 0 };
fgets(l_v1, sizeof(l_v1), stdin);
char* result = strchr(l_v1, 'c');
//printf("%x\n", 找到以后的字符
if (result == 0) {
printf("找到c");
}
else {
printf("没有找到c");
}
system("pause");
}
strstr 寻找字符串
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[100] = { 0 };
fgets(l_v1, sizeof(l_v1), stdin);
char *result =strstr(l_v1, "你好");
//printf("%x\n", result);
if (result == 0) {
printf("找到你好");
}
else {
printf("没有找到你好");
}
system("pause");
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char 账户[30] = { 0 };
char 密码[30] = { 0 };
printf("请你输入账户");
fgets(账户, sizeof(账户), stdin);
printf("请你输入密码");
fgets(密码, sizeof(密码), stdin);
账户[strlen(账户) - 1] = 0;
账户[strlen(密码) - 1] = 0;
char l_v1[5] = "你好";
char l_v2[10] = "11234567";
if (strcmp(l_v1, 账户) == 0 && strcmp(l_v2, 密码) == 0) {
printf("你的账户余额1000元");
}
else {
printf("你输入账户密码有误");
}
system("pause");
}