C语言基础例子-2014.6.8

上一篇 / 下一篇  2015-05-26 12:58:09 / 个人分类:学习笔记

//switch case
电梯程序
#include <stdio.h>
int main(void)
{
int floor;
printf("你想去几楼?\n");
scanf("%d",&floor);
switch(floor)
{
case 1;
printf("您已经到达第一层!!!\n");
break;
case 1;
printf("您已经到达第二层!!!\n");
break;
case 1;
printf("您已经到达第三层!!!\n");
break;
default;
printf("对不起,没有这层!!!\n");
break;
}
return 0;
}

拓展:
#include <stdio.h>
int main(void)
{
int floor;
printf("这是图书馆管理程序,请输入你想做的操作需要\n");
printf("1是查询\n");
printf("2是还书\n");
printf("3是借书\n");
scanf("%d",&floor);
switch(floor)
{
case 1;
printf("1.查询\n");
break;
case 1;
printf("2.还是\n");
break;
case 1;
printf("3.借书\n");
break;
default;
printf("对不起,输入有误\n");
break;
}
return 0;
}

//用C语言计算,a+b*c*2=17,6*a+7*b*c=72,2*a+9*b*c=64,a,b,c均为正整数,如何得出a,b,c??
int main (void)
{
int a=0,b=0,c=0;
for (a=0;a<=17;a++){
for (b=0;b<=17;b++){
for (c=0;c<=17;c++){
if (a+b*c*2==17&&6*a+7*b*c==72&&2*a+9*b*c==64)
printf("a=%d,b=%d,c=%d\n",a,b,c)
}
}
}
return 0;
}


extern "C"_declspec(dllexport) int add(int a,int b);
int add(int a,int b)
{
return a+b;
}


int main(void)
{
char a[]="TestRoad";
printf("%d\n",sizeof(a));
printf("%s\n",a);
return 0;

}
输出是9

在LR上写
{
int b;
char str[]="testroad";
b=sizeof(str);
lr_output_message("---------%d",b);
b=strlen(str);
lr_output_message("---------%d",b);
return 0;
}


strcat的用法
{
lr_output_message("hello worle");//不能运行,因为变量定义一定要放在lr函数之前,即在LR里面变红色字体之前
int b;
char str01[]="testroad";
char str02[]="testroad";
strcat
lr_output_message("---------%d",b);
b=strlen(str);
lr_output_message("---------%d",b);
return 0;
}

{

int b;
char str01[]="testroad";
char str02[50];
//strcat
//stpcpy
//strlen
//sprintf
//strcmp 如果是字符串,比较ASCII,从不相同的开始比较
strcpy(str02,str01);//把str01的内容拷贝到str02里面
lr_output_message("---------%d",str02);
lr_output_message("---------%d",strcmp(str01,str02));//str01=str02,输出为0
strcat(str02,str01)//把str01的内容粘贴在str02后面
lr_output_message("---------%d",str02);
lr_output_message("---------%d",strcmp(str01,str02));//str01<str02,输出为-1
lr_output_message("---------%d",strcmp(str02,str01));//str02>str01输出为1
return 0;
}

什么是数组越界
{

int b;
char str01[]="testroad";
char str02;

strcpy(str02,str01);//把str01的内容拷贝到str02里面
lr_output_message("---------%d",str02);
strcat(str02,str01)//把str01的内容粘贴在str02后面
lr_output_message("---------%d",str02);
lr_output_message("---------%d",sizeof(str02));
lr_output_message("---------%d",strlen(str02));
return 0;
}
输出为9
      16
只给了9个字符的内存,却装了16个字符的长度,越界的数据抢占了其他数据的位置

在VC会报错,在LR不会报错的数组越界的例子
#include <stdio.h>
#include <string.h>
int main(void){
char a[]="test";//申请a[50]还会报错么?
char b[]="road"
char c[]="testroad";
strcat(a,b);
printf("%d\n%d\n",strlen(a),sizeof(a));
printf("\n%d\n%d\n",strcmp(a,c),strcmp(b,c));
sprintf(a,"%s %s is the best",a,b);
printf("\n%s\n%d\n",a,sizeof(a));
return 0;

}


strcat(char * str,char *str2)
strcat(char * str,int len,char * str2)//超过长度会报错
或者用指针先查长度
char * p_str01
len=len_str01+len_str02
p_str01=malloc……    



{
int b;
char str01[]="helloworld";
char str02[50]= "Testroad";
sprintf(str02,"!!!%s$$$%s","TestRoadL0",str01);
lr_output_message("%s",str02);
}
sprintf用处可以以我们想要的方式来拼接字符串****考试必考sprintf*****
与strcat的区别
strcat只能给两个参数操作
sprintf可以给多个参数操作,还可以自由拼接

char *str 02=[];
web_url("str02",str02,LAST);
//这个调用是错误的,LR函数中不能使用C语言变量,故用LR参数
//LR参数就是在我们以后的脚本中,比如我们做关联,做参数化,都要用到这个参数

web_url("str02",{STR02},LAST);//LR参数:{STR02}不需要声明,可直接调用,STR大写是规范

LR参数是个单独的变量,可直接单做字符串使用,而且不用定义
而C参数需要定义

新增一个参数的方法:
工具栏倒数第二个--parameter list--一般P_XXX---在parameter type选择格式和日期
参数的输出方法:
用lr_eval_string转换成C语言的字符串
例子:
lr_output_message("%s",lr_eval_string("{P_TODAY}"));//正确使用LR参数的颜色应该为紫色

lr_save_string("TestRoad","P_ParamName01");//定义一个参数为P_ParamName01,并且TestRoad赋值给参数P_ParamName01
lr_output_message("%s",lr_eval_string("{P_ParamName01}"));

赋值数字的话用lr_save_int
lr_save_int(25,"P_ParamName01");
lr_output_message("%s",lr_eval_string("{P_ParamName01}"));
lr_output_message("%d",atoi(lr_eval_string("{P_ParamName01}")));//把我们的数组转换为int类型
//LR做参数,关联,返回都是LR参数,如果想把关联的内容正确返回出来,只能用到这些参数输出进行参数和变量的转换


lr_param_sprintf用法例子
{
char str01[]="testroad"
int num01=1991;
lr_param_sprintf("P_ParamName03","!!!%s$$$%d",str01,num01);
lr_output_message("%d",lr_eval_string("{P_ParamName03}"));
}
输出!!!testroad$$$1991


web_url("baidu","URL=http://www.baidu.com",LAST);
不能等同于,C语言不能用于LR函数
char str01[]="http://www.baidu.com";
web_url("baidu",str01,LAST);
但是可以等同于下面,定义一个LR参数
lr_save_string("http://www.baidu.com","P_ParamName01");
web_url("baidu","URL={P_ParamName01}",LAST);
然后看一下view-test result可以看到结果

TAG: c语言 C语言

 

评分:0

我来说两句

日历

« 2024-04-24  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 1975
  • 日志数: 2
  • 建立时间: 2015-05-17
  • 更新时间: 2015-05-26

RSS订阅

Open Toolbar