大神帮忙解释一个C语言程序哈,是实现STRCMP函数功能的

大神帮忙解释一个C语言程序哈,是实现STRCMP函数功能的,第1张

strcmp是字符串比较函数,调用形式为strcmp(字符串1,字符串2);

功能:字符串1与字符串2比较,如果字符串1==字符串2,则函数值为0,1大于2,则为正整数,1小于2,则为负整数;

从两个字符串的第一个字符开始逐个进行比较(按照ascii码

的大小进行比较),之道出现不同的字符或遇到“\0”为止。例如:char*str1=hello,*str2=void;则strcmp(str1,str2)<0因为‘h’<'v';

一个简易的计算器的。可以无限加。。把乘除减都删除了,你改下+好就可以换

#include<stdio.h>

#include<math.h>

double com(double op1,double op2,char op)

{

if(op=='+') return op1+op2

if(op=='-') return op1-op2

if(op=='*') return op1*op2

if(op=='/') return op1/op2

}

int main()

{

int i=0,j=0,t=0

double x,y

char c

char b[100]={}

double a[100]={}

while(1)

{

scanf("%lf",&a[i])i++

scanf("%c",&b[j])

if(b[j]=='\n') break

j++

}

for(i=0i<ji++)

{

if(b[i]=='+')

{

c=b[i]x=a[i]y=a[i+1]

a[i+1]=com(x,y,c)

}

}

printf("%.2lf\n",a[i])

}

这是我编的程序哈!你看一哈可以不。

******************************************以下时程序正文******************************************

%质点运动的位置,速度和加速度

clear                                    %清除变量

tm=3                                  %最大时间

dt=1                                   %时间间隔

t1=0:tm                              %以1秒为间隔的时间向量

x1=5*t1-t1.^3                      %位置坐标

v1=diff(x1)/dt                      %速度的平均值

v1=[5,v1]                            %补充初速度

a1=diff(v1)/dt                     %加速度的平均值

a1=[0,a1]                           %补充初加速度

dt=0.1                                %时间间隔

t2=0:dt:tm                          %以0.1秒为间隔的时间向量

x2=5*t2-t2.^3                      %位移

v2=diff(x2)/dt                      %速度的平均值

v2=[5,v2]                            %补充初速度

a2=diff(v2)/dt                     %加速度的平均值

a2=[0,a2]                           %补充初加速度

dt=0.01                              %时间间隔

t3=0:dt:tm                          %以0.01秒为间隔的时间向量

x3=5*t3-t3.^3                      %位移

v3=diff(x3)/dt                      %速度的平均值

v3=[5,v3]                            %补充初速度

a3=diff(v3)/dt                     %加速度的平均值

a3=[0,a3]                           %补充初加速度

x=5*t2-t2.^3                         %坐标的瞬时值

v=5-3*t2.^2                          %速度的瞬时值

a=-6*t2                                %加速度的瞬时值

figure                                   %创建图形

plot(t1,x1,'-*',t2,x2,'-+',t3,x3,'.-',t2,x,'-o')    %画位置坐标曲线族

legend('1','0.1','0.01','瞬时值')                  %插入时间差图例

grid on                                                      %加网格

title('质点的位置','FontSize',16)                 %标题

xlabel('\itt\rm/s','FontSize',16)                    %横坐标标签

ylabel('\itx\rm/m','FontSize',16)                  %纵坐标标签

figure                                                         %创建图形

plot(t1,v1,'-*',t2,v2,'-+',t3,v3,'.-',t2,v,'-o')    %画速度曲线族

legend('1','0.1','0.01','瞬时值')                   %插入时间差图例

grid on                                                       %加网格

title('质点的速度','FontSize',16)                  %标题

xlabel('\itt\rm/s','FontSize',16)                     %横坐标标签

ylabel('\itv\rm/m\cdots^-^1','FontSize',16)    %纵坐标标签

figure                                                          %创建图形

plot(t1,a1,'-*',t2,a2,'-+',t3,a3,'.-',t2,a,'-o')     %画加速度曲线族

legend('1','0.1','0.01','瞬时值')                    %插入时间差图例

grid on                                                        %加网格

title('质点的加速度','FontSize',16)               %标题

xlabel('\itt\rm/s','FontSize',16)                     %横坐标标签

ylabel('\ita\rm/m\cdots^-^2','FontSize',16)    %纵坐标标签

******************************************到这里程序结束******************************************

注意:%后面的是注释。你以后编程的时候记得也要多加注释,这样以后看程序就很容易看懂了。

下面是我运行后画的图:

第一幅图:质点的位置

第二幅:质点的速度

第三幅:质点的加速度

你也可以自己运行一下哈!!!

希望我的回答对你有帮助!亲!记得好评哦!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7926914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存