我正在尝试编写一个系统,用我已经准备好的预先编写的示例对c ++代码进行分级。这是一个非常简单的c ++代码,如下所示:
#include <iostream>
using namespace std;
int main()
{
int a;
cin >> a;
if (a > 100)
cout << "Big";
else
cout << "Small";
return 0;
}
所以我想用bash测试和评分这个程序,声明一个得分变量并最终回显它。这是我写的(我已经标记了我需要帮助用双引号写作的地方)
#!/bin/bash
g++ new.cpp -o new
test1=101
test2=78
score=0
if [ "Result of executing ./new with $test1 variable as input"=="Big" ]
then
(( score += 50 ))
fi
if [ "Result of executing ./new with $test2 variable as input"=="Small" ]
then
(( score += 50 ))
fi
echo $score
另外我对bash还是一个新手,所以如果你能告诉我一个更简单的方法来使用bash作为例子(比如循环),我很乐意听到它。 谢谢!
答案 0 :(得分:2)
如果你想用params执行 new 并获得结果,你应该尝试这样的事情:
#!/bin/bash
g++ new.cpp -o new
test1=101
test2=78
score=0
if [ $(./new $test1) == "Big" ]; then
(( score += 50 ))
fi
if [ $(./new $test2) == "Small" ]; then
(( score += 50 ))
fi
echo $score